package com.zhuoyue.biz.core.api.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zhuoyue.biz.core.api.domain.AutomateDO;
import com.zhuoyue.common.dto.BaseResultDTO;
import com.zhuoyue.common.dto.BatchResultDTO;
import com.zhuoyue.common.dto.ResultDTO;

import java.util.List;

/**
 * @author wjming
 */
public interface AutomateService extends IService<AutomateDO> {

    /**
     * 查询家庭中的自动化列表
     *
     * @param homeId
     * @return
     */
    public List<AutomateDO> getAutomateListByHomeId(String homeId);

    /**
     * 查询家庭中的自动化列表
     *
     * @param gatewayMac
     * @return
     */
    public List<AutomateDO> getAutomateListByGatewayMac(String gatewayMac);
    /**
     * 新增自动化
     *
     * @param automate
     * @return
     */
    public AutomateDO addAutomate(AutomateDO automate);

    /**
     * 根据主键修改
     *
     * @param automate
     * @return
     */
    public AutomateDO updateAutomateById(AutomateDO automate);

    /**
     * 根据主键删除
     *
     * @param id
     * @return
     */
    public void deleteAutomateById(String id);

    /**
     * 根据主键查询
     *
     * @param id
     * @return
     */
    public ResultDTO<AutomateDO> getAutomateById(String id);

}
